import axios from 'axios'
import { storage } from "@/utils/storage"
import router from '@/router/index';

// 创建axios实例
const request = axios.create({
    //baseURL: 'http://112.74.97.247:8000/',// 所有的请求地址前缀部分
    baseURL: 'http://127.0.0.1:8000/',// 所有的请求地址前缀部分
    timeout: 80000, // 请求超时时间(毫秒)
    withCredentials: true,// 异步请求携带cookie
    // headers: {
    // 设置后端需要的传参类型
    // 'Content-Type': 'application/json',
    // 'token': x-auth-token',//一开始就要token
    // 'X-Requested-With': 'XMLHttpRequest',
    // },
})

// request拦截器
request.interceptors.request.use(
   
    config => {
        
        // 如果你要去localStor获取token,(如果你有)
        let token = storage("userToken").get()

        if (token) {
            //添加请求头
            config.headers["Authorization"] = "" + token
        }
        return config
    },
    error => {
        // 对请求错误做些什么
        Promise.reject(error)
    }
)

// response 拦截器
request.interceptors.response.use(
    response => {
        // 对响应数据做点什么
        const code = response.data.code;

        if (code === 410) {

        } else if (code === 400) {
            //未登录,跳转到登录页面
            storage("userToken").remove()
            router.push('/')
        }

        return response.data
    },
    error => {
        // 对响应错误做点什么
        return Promise.reject(error)
    }
)

export default request